/**
 * @author      Jorge Blasco Al�s <jbalis@inf.uc3m.es>
 * @author		Guillermo Suarez de Tangil Rotaeche <gtangil@pa.uc3m.es>
 * @version     1.0             
 */
package es.uc3m.setichat.constants;

/**
 * Constants to be used when an error message has to be sent
 */
public class ErrorConstants {

	/**
	 * Error code for not supported types of messages
	 */
	public static final String ERROR_CODE_TYPE_NOT_SUPPORTED = "405";
	/**
	 * Error message for not supported types of messages
	 */
	public static final String ERROR_MESSAGE_TYPE_NOT_SUPPORTED = "Received message type is not currently supported by the application";

	/**
	 * Error code for XMPP ids that do not match mobile phone numbers stored in
	 * the app
	 */
	public static final String ERROR_CODE_SOURCES_IDS_DO_NOT_MATCH = "406";
	/**
	 * Error message for XMPP ids that do not match mobile phone numbers stored
	 * in the app
	 */
	public static final String ERROR_MESSAGE_SOURCES_IDS_DO_NOT_MATCH = "XMPP message source id does not match with SeTIChat source id (mobile number)";

	/**
	 * Error code for users that try to connect without signing up first
	 */
	public static final String ERROR_CODE_USER_NOT_SIGNEDUP = "407";
	/**
	 * Error message for users that try to connect without signing up first
	 */
	public static final String ERROR_MESSAGE_USER_NOT_SIGNEDUP = "The user previous message refers to is not signed up in the application";

	/**
	 * Error code for messages that do not comply with SeTIChat message
	 * structure
	 */
	public static final String ERROR_CODE_WRONG_FORMAT = "401";
	/**
	 * Error message for messages that do not comply with SeTIChat message
	 * structure
	 */
	public static final String ERROR_MESSAGE_WRONG_FORMAT = "Message format is not compliant with SeTIChat Message format";

	/**
	 * Error code for messages from users that are not in SeTIChat
	 */
	public static final String ERROR_CODE_USER_NOT_PRESENT = "408";
	/**
	 * Error message for messages from users that are not in SeTIChat
	 */
	public static final String ERROR_MESSAGE_USER_NOT_PRESENT = "The user is not present in SeTIChat";

	/**
	 * Error code for users that try to retrieve other user's private key
	 */
	public static final String ERROR_CODE_NOT_PERMITTED = "409";
	/**
	 * Error message for users that try to retrieve other user's private key
	 */
	public static final String ERROR_MESSAGE_NOT_PERMITTED = "Trying to retreive another user private key. This is not allowed.";

	/**
	 * Error code for users that try to retrieve a public key certificate that
	 * does not exist yet
	 */
	public static final String ERROR_CODE_CER_NOT_FOUND = "410";
	/**
	 * Error message for users that try to retrieve a public key certificate
	 * that does not exist yet
	 */
	public static final String ERROR_MESSAGE_CER_NOT_FOUND = "Requested certificate was not found";

	/**
	 * Error code for users that try to retrieve a private key certificate that
	 * does not exist yet
	 */
	public static final String ERROR_CODE_P12_NOT_FOUND = "411";
	/**
	 * Error message for users that try to retrieve a private key certificate
	 * that does not exist yet
	 */
	public static final String ERROR_MESSAGE_P12_NOT_FOUND = "Requested P12 was not found";

	/**
	 * Error code for unknown or uncontrolled errors
	 */
	public static final String ERROR_CODE_UNKNOWN_ERROR = "413";
	/**
	 * Error message for unknown or uncontrolled errors
	 */
	public static final String ERROR_MESSAGE_UNKNOWN_ERROR = "Unknown error, please debug the server.";
	/**
	 * Error code for mobile already in SETIChat
	 */
	public static final String ERROR_CODE_MOBILE_PRESENT = "414";
	/**
	 * Error message for mobile already in SETIChat
	 */
	public static final String ERROR_MESSAGE_MOBILE_PRESENT = "The user is already present in SeTIChat.";
	/**
	 * Error code for mobile already in SETIChat
	 */
	public static final String ERROR_CODE_CONTENT_ERROR = "415";
	/**
	 * Error message for other Content expected for a type of message
	 */
	public static final String ERROR_MESSAGE_CONTENT_ERROR = "Other content is expected for this type of message.";
	// -----------------------------------------------------------------------------------------------
	/**
	 * IdMessage for error message
	 * */
	public static final String ERROR_IDMESSAGE = "0000000000000000";
}
